1. Technical Field of the Invention
The present invention relates to method and apparatus for controlling communications between processing units and peripheral devices in a data processing system, and more particularly to efficiently providing connection between a processing unit and a peripheral device across the communications channel when a busy or conflict condition has been detected on the channel.
2. Prior Art
Prior art data processing systems include apparatus and methods for presenting requests for reconnection between a peripheral device and a processing unit, perhaps through an I/O controller and a channel across a communications link after an initial request for connection has been denied due to a busy condition detected in some element of the system. In such systems, a process generally implemented in software, partially built a request for connection frame message and directs apparatus to send the frame along one or more paths to a channel located at the processing unit. Monitoring the various interfaces to keep track of which ones have successfully reconnected and which have not is tedious and time consuming. Such monitoring can needlessly consume valuable processing resources in the controller subsystem when the communications link or a switch connected between a channel and the controller in the communications link is busy and which frustrates the controller attempts to reconnect to the channel.
Busy conditions generally require the subsystem to postpone reconnection attempts to redrive another request for reconnection frame to the same channel or to redrive another request for reconnection to a different channel to meet the controller needs for connection to the processing unit. Some prior art systems provide an automatic frame transmission process which automatically starts whenever a request for channel service exists and the controller resources are available. Further, some of the prior art systems provide for a flexible number of retry attempts to allow for performance tuning of the system. The retry process should be able to differentiate between retriable busy conditions and nonretriable busy conditions.
In any event, none of the prior art of which Applicants are aware teach nor suggest a channel to controller communication system including a retry mechanism having the capability of adding additional addresses into the process without interrupting operation, and which identifies unsuccessful reconnection attempts.